package com.work.service;


import com.work.pojo.Address;
import com.work.pojo.User;

import java.util.List;

/**
 * 用户服务
 *
 * @author gy
 * &#064;date 2022/09/29
 * @version 1.0.0
 * @since 1.0.0
 */
public interface UserService {
	/**
	 * 登录
	 *
	 * @param username 用户名
	 * @param password 密码
	 * @return {@link User}
	 */
	User login(String username,String password);
	
	/**
	 * 注册
	 *
	 * @param user 用户
	 * @return boolean
	 */
	boolean register(User user);
	
	/**
	 * 检查用户名
	 *
	 * @param username 用户名
	 * @return boolean
	 */
	boolean checkUserName(String username);
	
	/**
	 * 管理员登录
	 *
	 * @param username 用户名
	 * @param password 密码
	 * @return {@link User}
	 */
	User adminLogin(String username, String password);
	
	/**
	 * 用户列表
	 *
	 * @return {@link List}<{@link User}>
	 */
	List<User> listUser();
	
	/**
	 * 删除用户id
	 *
	 * @param id id
	 */
	void deleteUserById(Integer id);
	
	/**
	 * 搜索用户名字和性别
	 *
	 * @param username 用户名
	 * @param gender   性别
	 * @return {@link List}<{@link User}>
	 */
	List<User> searchUserByNameAndGender(String username, String gender);

	List<User> getAllUserList();

    List getAddress(Integer id);

    void deleteAddress(Integer id);

	void defaultAddress(Integer id,Integer uid);

	void updateAddress(Address address);

	void addAddress(Address address);
}
